package com.zb.vo;

import com.zb.entity.KnowledgeTypeRelationVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @Author WEN
 * @Date 2023/7/31 0031
 **/
@Data
@ApiModel("故障实体")
public class FaultVo {
    @ApiModelProperty(value = "故障ID")
    private Long id;

    @NotBlank(message = "故障名称不能为空")
    @Length(max = 20, message = "故障名称字符长度限制20个以内")
    @ApiModelProperty(value = "故障名称", required = true)
    private String name;

    @NotNull(message = "故障状态不能为空")
    @ApiModelProperty(value = "故障状态：false-启用，true-禁用", required = true, example = "false")
    private Boolean status;

    @Length(max = 500, message = "故障内容字符长度限制500个以内")
    @ApiModelProperty(value = "故障内容")
    private String content;

    @Length(max = 500, message = "解决方案内容字符长度限制20个以内")
    @ApiModelProperty(value = "解决方案内容")
    private String solution;

    @ApiModelProperty(value = "故障图片、附件路径")
    private List<FaultAnnexVo> annexs;

    @ApiModelProperty(value = "删除故障图片、附件路径集合ID")
    private List<Long> delAnnexIds;

    @ApiModelProperty(value = "解决图片、附件路径")
    private List<FaultAnnexVo> solutions;

    @ApiModelProperty(value = "删除解决图片、附件路径集合ID")
    private List<Long> delSolutionIds;

    @ApiModelProperty(value = "知识库分类对象")
    private List<KnowledgeTypeRelationVo> knowledgeTypeVos;

    @ApiModelProperty(value = "删除的关联对象ID")
    private List<Long> delRelationIds;
}
